The idea of creating autonomous computer systems relies heavily on the concept of autoconfiguration in a computer network. The establishment of communication in dynamic networks without users' interference is one of the most important topics for next-generation computer networks. One of the biggest challenges related to autoconfiguration in dynamic networks is addressing—the automatic distribution and management of addresses in a network is a critical part of an autonomous communication environment that is further made complex by the presence of challenges such as mobility, policies control and intermittent connections.
In future networking, it is expected that nodes will connect to and disconnect from a network without the need for a user to manually change a device configuration. Through a robust mechanism for automatic bootstrapping, a node may configure itself by contacting an existing node of the network which the node wishes to join, and initiate communication. Several approaches have been proposed to achieve self-configuration. Examples of these include mechanisms for dynamic addressing, addressing management, and dynamic configuration of ad hoc networks.
Methods of defining an address for a node in a dynamic environment are known, but these often rely on the presence and the help of a fixed and structured network, where a DHCP (Dynamic Host Configuration Protocol) or another kind of mechanism is available. Other solutions describe a mechanism where the node refers to its hardware address (e.g. a physical address such as a MAC—Medium Access Control—address) and uses this information to calculate its own network address. Nonetheless, when an address is self-attributed, there is a need for a mechanism that prevents nodes from using addresses that were already allocated to others. Similarly, other proposals suggest that a node may create its own network address by combining information from its physical address and pre-defined network related information in order to avoid addressing conflicts as described for example in US Patent Application US 2003/0081578, US Patent Application US 2004/0240474 A1, or U.S. Pat. No. 6,728,232 B2.
Other solutions have considered a mechanism whereby a node takes information from advertisement messages sent by a server and combines it with information about its own interface type, or other pre-defined information, creating its own valid network address—see US Patent Application US 2007/01600514. However, this again requires the provision of a fixed server.
Further strategies have been proposed for a node connected to a home domain using a specific address. When moving to other regions and interacting with other domains, the node receives or calculates a temporary address to be used during the time it remains away from its home domain—see for example U.S. Pat. No. 5,708,655 or Charles Perkins, “IP Mobility Support for IPv4”, RFC 3344, August 2002.
Trial and error (“heuristic method”) is a common methodology used in many domain problems. In the addressing context, a node would simply generate its own address. This node then verifies whether this address is already in use by another node in the network. If not, the node attributes to itself the generated address.
It has also been proposed to provide one or more servers carrying an amount of available addresses. These servers are responsible for the management of address pools from where the nodes take their valid addresses—see, for example U.S. Pat. No. 6,993,583.